package com.thz.common.entity;

import com.baomidou.mybatisplus.annotation.*;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import java.time.LocalDateTime;

/**
 * 用户信息实体类
 * 基于IP地址的用户标识系统，无需注册登录即可自动识别用户
 * 
 * @author THZ
 * @date 2025
 */
@Data
@TableName("user_info")
public class UserInfo {
    
    /**
     * 主键ID
     */
    @TableId(value = "id", type = IdType.AUTO)
    private Long id;
    
    /**
     * IP地址
     */
    private String ipAddress;
    
    /**
     * 头像URL
     */
    private String avatarUrl;
    
    /**
     * 总转换次数
     */
    private Integer totalConversions;
    
    /**
     * 最后访问时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime lastVisitTime;
    
    /**
     * 创建时间
     */
    @TableField(fill = FieldFill.INSERT)
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime createTime;
    
    /**
     * 更新时间
     */
    @TableField(fill = FieldFill.INSERT_UPDATE)
    private LocalDateTime updateTime;
}

